/*
	Copyright © Eleanor CMS
	URL: http://eleanor-cms.ru, http://eleanor-cms.com
	E-mail: support@eleanor-cms.ru
	Developing: Alexander Sunvas*
	Interface: Rumin Sergey
	=====
	*Pseudonym
*/
CORE.Catalog={
	Init:function(where,module){
		var th=this;
		$(".getmore",where).filter(function(){
			if($(this).data("id") && $(this).data("more") && $(this).data("pages"))
			{
				$(this).data("for",th.data.length);
				th.data.push({obj:$(this),text:[],pages:[],page:0,show:false,t:$($(this).data("more")),p:$($(this).data("pages"))});
				return true;
			}
			return false;
		}).click(function(ev,page){
			page=page||1;
			var a=$(this);
			if(typeof th.data[a.data("for")].text[page]=="undefined")
				CORE.Ajax(
					{
						language:CORE.language,
						module:module,
						event:"getmore",
						id:a.data("id"),
						page:page,
						"for":a.data("for")
					},
					function(r)
					{
						th.data[a.data("for")].text[page]=th.data[a.data("for")].t.clone(false).children().remove().end();
						th.data[a.data("for")].t.replaceWith(th.data[a.data("for")].text[page]);
						th.data[a.data("for")].t=th.data[a.data("for")].text[page].html(r["text"]);

						if(r["pages"])
						{
							th.data[a.data("for")].pages[page]=th.data[a.data("for")].p.clone(false).children().remove().end();
							th.data[a.data("for")].pages[page].insertAfter(th.data[a.data("for")].p);
							th.data[a.data("for")].p.detach();
							th.data[a.data("for")].p=th.data[a.data("for")].pages[page].html(r["pages"]);
						}
						else
							th.data[a.data("for")].p=th.data[a.data("for")].pages[page]=false;

						if(!th.data[a.data("for")].show)
						{
							th.data[a.data("for")].show=true;
							th.data[a.data("for")].t.add(th.data[a.data("for")].p).fadeIn();
						}

						th.data[a.data("for")].page=page;
						a.toggleClass("getmore getmore-active");
					}
				);
			else if(typeof arguments[1]=="undefined")
			{
				if(th.data[a.data("for")].show)
				{
					var fo=th.data[a.data("for")].t;
					if(th.data[a.data("for")].p)
						fo=fo.add(th.data[a.data("for")].p);
					fo.fadeOut();
				}
				else
				{
					var fi=th.data[a.data("for")].t;
					if(th.data[a.data("for")].p)
						fi=fi.add(th.data[a.data("for")].p);
					fi.fadeIn();
				}
				th.data[a.data("for")].show=!th.data[a.data("for")].show;
				a.toggleClass("getmore getmore-active");
			}
			else
			{
				th.data[a.data("for")].t.replaceWith(th.data[a.data("for")].text[page]);
				th.data[a.data("for")].t=th.data[a.data("for")].text[page];

				if(th.data[a.data("for")].pages[page])
				{
					th.data[a.data("for")].pages[page].insertAfter(th.data[a.data("for")].p);
					th.data[a.data("for")].p.detach();
					th.data[a.data("for")].p=th.data[a.data("for")].pages[page];
				}
				th.data[a.data("for")].page=page;
			}
			return false;
		})
	},
	data:[],//Массив с датой key : {pages:{},text:{},page:1}
	GoPage:function(p,d)
	{
		if(typeof this.data[d["for"]]!="undefined")
			this.data[d["for"]].obj.trigger("click",[p]);
	}
}
